package Repositorios;

import java.util.ArrayList;

import ClassesBases.Cliente;
import Interfaces.InterfaceRepositorioCliente;

public class RepositorioClientesArrayList implements
		InterfaceRepositorioCliente {
	private static final String CLIENTE_JA_CADASTRADO = "Cliente já cadastrado!";
	private static final String CLIENTE_CRIADO_COM_SUCESSO = "Cliente criado com sucesso!";
	private ArrayList<Cliente> clientes;
	private Cliente cliente;

	public RepositorioClientesArrayList() {
		clientes = new ArrayList<Cliente>();
	}

	@Override
	public void inserir(Cliente c) {
		if (procurar(c.getCpf()) == null) {
			this.clientes.add(c);
			System.out.println(CLIENTE_CRIADO_COM_SUCESSO);
		}else {
			System.out.println(CLIENTE_JA_CADASTRADO);
		}
	}

	@Override
	public boolean existe(String num) {
		if (procurar(num) != null) {
			return true;
		}
		return false;
	}

	@Override
	public void atualizar(Cliente c) {
		this.cliente = procurar(c.getCpf());
		if (this.cliente != null) {
			this.cliente = c;
		}
	}

	@Override
	public Cliente procurar(String num) {
		for (Cliente cliente : clientes) {
			if (cliente.getCpf().equals(num)) {
				return cliente;
			}
		}
		return null;
	}

	@Override
	public void remover(String num) {
		this.cliente = procurar(num);
		if (this.cliente != null) {
			this.clientes.remove(cliente);
		}
	}

}
